3.Bitcoin Coreの紹介
tag | slide |
---|---|
トップページ | 目次 |
概要
- bitcoinネットワークにフルノードとして参加するためのソフトウェア。
- bitcoinを利用したアプリケーション(ECサイト)などを作成する際に必要。
- bitcoinネットワークでの簡単な送金、チェーンの様子の観察であればGUI版のQtも利用できる。
- 機能
- トランザクションの作成、送信、受信
- 鍵保存
- マイニング
- その他のノードとのP2P通信
世界で実際に走っているノードの殆どはBitcoin Core(10,000くらい)
- bitcoin開発の中心点であり、bitcoinのプロトコルはbitcoin coreの仕様によって定義されている。
- 新しいプロトコルを採用する → Bitcoin Coreのリポジトリのmasterブランチにそのプロトコルを実装した変更をマージする
- Satoshiによって作られたbitcoinのクライアントは、実はホワイトペーパー以前に完成していた。
- MITライセンスで開発されている(オープンソース)
- 当初はSatoshiNakamotoのみで開発されていたが今では600以上のContributerがいる
- そのうち10人程度はFulltime、さらに数十人はパートタイムで開発している
- ソフトウェアは今日までに大きく改善され、それが今、Bitcoin Coreとして知られている
実装
- Bitcoin Coreはbitcoinシステムのリファレンス実装(bitcoinシステムのソフトウェアを作成する際、各機能をどのように実装すればよいか参考にするべき実装)で、bitcoinを扱う際に必要なすべての機能が実装されている。
- しかし、Bitcoin CoreはDeveloper向けのリファレンス実装ではあるが、実際の商用利用などに利用することは推奨されない。実際には、BIP39,32(HDウォレットやニーモニックコード)に即したノード、ウォレットを利用することが望ましい。とMastering Bitcoinには書かれている。
- 言語はC++。
- ソースは全てGithubに公開されている
- commit数の推移を見ると、今なお全力開発中であることがわかる。
- コア開発者にはブロックストリームのco-founderなどもいる
インストール方法
- HPからダウンロードする
- ソースコードをコンパイルして実行する
- 今回はこの手順を解説します。